The hardware resources of some computer systems include multiple central processing units (CPUs) and input/output (I/O) resources. Firmware partitions, or “fPars,” are entities that allow a system to be segmented into non-intersecting hardware resource subsets. A particular resource subset, or fPar, may be capable of booting an operating system, for example, provided that the fPar contains adequate hardware resources.
In some instances, a user may configure fPars through the use of a configuration utility. In response to user inputs that request configuration changes, the configuration utility may make changes to a persistent store that defines the configuration or, more specifically, that defines the fPars included in the configuration.
During the process of creating or updating an fPar, a user may attempt to make a configuration change that is invalid or illegal. For example, a user may attempt to add a given CPU to an fPar that does not exist.
Some prior configuration utilities are incapable of accurately indicating the root causes of some configuration errors. Accordingly, a user may perform several configuration modification attempts before arriving at a configuration that works. In addition, some prior configuration utilities are complex and platform-dependent, and thus are difficult to maintain and are not easily portable from one platform to another. Developers strive to create more portable, less complex, and more user-friendly configuration utilities.